home *** CD-ROM | disk | FTP | other *** search
- // Definición de la clase habitación.
-
- #ifndef __ROOM__
- #define __ROOM__
-
- #define MAX_OBJ 20 // Número máximo de objetos por habitación.
- #define R_NORTE 1
- #define R_ESTE 2
- #define R_SUR 3
- #define R_OESTE 4 // Los puntos cardinales
-
- #include "objects.hpp" // Incluye la definición de los objetos.
-
- class Room {
- private:
- char *texto; // Texto mostrado al entrar.
- objeto *cosa[MAX_OBJ]; // Define los objetos que hay en el suelo.
- int num_obj; // Número de objetos en el array.
- Room *norte;
- Room *este;
- Room *sur;
- Room *oeste; // Las salidas de la habitación.
- public:
- void describe(void); // Muestra la descripción de la sala.
- objeto *coge_obj(char *que); // Devuelve un objeto pasado en "que".
- void deja_obj(objeto *cual); // Deja un objeto.
- void conecta(Room *h1, int direc);
- // Conecta 2 habitaciones.
- void salidas(void); // Muestra las salidas.
- Room *ir_a(int direc); // Devuelve la habitación del lado.
- Room(char *text); // Constructor con sólo texto.
- ~Room() { /* Nada */ }; // Destructor que no hace nada.
- };
-
- #endif